package com.ktgj.sms.api.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ktgj.common.core.annotation.Excel;
import com.ktgj.common.core.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 短信对象 sms
 * 
 * @author ruoyi
 * @date 2021-08-11
 */
public class Sms extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 短信记录号 */
    private Long smsId;

    /** 手机号 */
    @Excel(name = "手机号")
    private String mobile;

    /** 短信内容 */
    @Excel(name = "短信内容")
    private String smsContent;

    /** 要求发送时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "要求发送时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date designateTime;

    /** 保留时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "保留时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date leftTime;

    /** 等级 */
    @Excel(name = "等级")
    private Long smsLevel;

    /** 处理结果 已发送、未发送、发送失败 */
    @Excel(name = "处理结果 已发送、未发送、发送失败")
    private String result;

    /** 发送时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "发送时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date sendTime;

    /** 发送通道 */
    @Excel(name = "发送通道")
    private String sendChunnel;

    /** 短信运营商 */
    @Excel(name = "短信运营商")
    private String sendSp;

    /** 员工id */
    @Excel(name = "员工id")
    private Long employeeId;

    /** 订单类型 */
    @Excel(name = "订单类型")
    private String orderType;

    /** 订单号 */
    @Excel(name = "订单号")
    private Long orderId;

    public Sms() {}

    public Sms(String mobile, String smsContent) {
        this.mobile = mobile;
        this.smsContent = smsContent;
    }

    public void setSmsId(Long smsId) 
    {
        this.smsId = smsId;
    }

    public Long getSmsId() 
    {
        return smsId;
    }
    public void setMobile(String mobile) 
    {
        this.mobile = mobile;
    }

    public String getMobile() 
    {
        return mobile;
    }
    public void setSmsContent(String smsContent) 
    {
        this.smsContent = smsContent;
    }

    public String getSmsContent() 
    {
        return smsContent;
    }
    public void setDesignateTime(Date designateTime) 
    {
        this.designateTime = designateTime;
    }

    public Date getDesignateTime() 
    {
        return designateTime;
    }
    public void setLeftTime(Date leftTime) 
    {
        this.leftTime = leftTime;
    }

    public Date getLeftTime() 
    {
        return leftTime;
    }
    public void setSmsLevel(Long smsLevel) 
    {
        this.smsLevel = smsLevel;
    }

    public Long getSmsLevel() 
    {
        return smsLevel;
    }
    public void setResult(String result) 
    {
        this.result = result;
    }

    public String getResult() 
    {
        return result;
    }
    public void setSendTime(Date sendTime) 
    {
        this.sendTime = sendTime;
    }

    public Date getSendTime() 
    {
        return sendTime;
    }
    public void setSendChunnel(String sendChunnel) 
    {
        this.sendChunnel = sendChunnel;
    }

    public String getSendChunnel() 
    {
        return sendChunnel;
    }
    public void setSendSp(String sendSp) 
    {
        this.sendSp = sendSp;
    }

    public String getSendSp() 
    {
        return sendSp;
    }
    public void setEmployeeId(Long employeeId) 
    {
        this.employeeId = employeeId;
    }

    public Long getEmployeeId() 
    {
        return employeeId;
    }
    public void setOrderType(String orderType) 
    {
        this.orderType = orderType;
    }

    public String getOrderType() 
    {
        return orderType;
    }
    public void setOrderId(Long orderId) 
    {
        this.orderId = orderId;
    }

    public Long getOrderId() 
    {
        return orderId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("smsId", getSmsId())
            .append("mobile", getMobile())
            .append("smsContent", getSmsContent())
            .append("designateTime", getDesignateTime())
            .append("leftTime", getLeftTime())
            .append("smsLevel", getSmsLevel())
            .append("result", getResult())
            .append("sendTime", getSendTime())
            .append("sendChunnel", getSendChunnel())
            .append("sendSp", getSendSp())
            .append("employeeId", getEmployeeId())
            .append("orderType", getOrderType())
            .append("orderId", getOrderId())
            .toString();
    }
}
